Hello, welcome back!
今天我們要來談一個複雜卻又非常有趣的議題。假設你有一個智商超高的朋友,可以回答任何包山包海的問題。但是,你又害怕把自己的秘密都告訴他。
是不是很熟悉?這就是目前人們使用 LLM 遇到的一大問題。
LLM 是一個超級大腦,能夠回應問題、撰寫文案或是生成程式碼。但是 LLM 透過大量資料進行學習,也就帶來了挑戰:如何在讓 AI 變得更聰明時,又能夠同時保護使用者隱私呢?
於是,區塊鏈和零知識證明(Zero-knowledge proof)就派上用場了!
如果你是這個系列的忠實讀者,應該已經很熟悉什麼是區塊鏈了。
那你會問,什麼是零知識證明呢?簡單來說,零知識證明可以讓人們證明一個秘密,卻又不需要透露秘密的內容,聽起來很像一種神奇的魔法對嗎?
讓我們用一個生活上的實際案例,來說明零知識證明是怎麼運作的。準備好了嗎?我們開始囉!
在某個週末,小明和他最好的朋友小智約在家裡一起玩。小明的爺爺是一位很有名的魔術師,家裡地下室總是擺滿了許多道具,其中一個看起來最具神祕氣息的,就是蒐藏著小明爺爺最厲害的魔法祕笈的保險箱,
小智一進地下室,就被這個散發出古魔法氣息的保險箱深深吸引,忍不住問道:「小明,你知道這個保險箱的密碼嗎?」
小明臉上閃過一抹神秘的微笑:「當然啦,但是我爺爺說不能讓別人知道。但我可以證明給你看我知道密碼,同時不用告訴你密碼。」
小智一臉狐疑:「怎麼可能?你要證明你知道密碼,唯一的方式就是直接輸入密碼,那我就知道密碼啦!」
小明自信的笑了笑,拿出了爺爺的一枚古代銀幣,跟小智說:「我們來玩個遊戲吧,你在這枚銀幣上做個記號,接著你到隔壁去,我把這枚銀幣放到保險箱。」
小明接著又解釋說:「你到隔壁房間後,可以喊『開』或是『關』,當你喊『開』,我會打開保險箱展示銀幣給你看;若你喊『關』,我會展示保險箱確實鎖住」
小智半信半疑,但還是同意了這個遊戲。接著,他們玩起了這個遊戲。
第一輪,小智在隔壁喊『開』。小明拿著銀幣出現在門口。
第二輪,小智喊『關』。他進來看到保險箱確實鎖著。
第三輪,小智再度喊『開』。小明再次展示了銀幣。
...
就這樣,他們玩了二十多輪。每一次,小明都能正確回應小智的要求。
遊戲結束了,小智驚訝的說:「看來你真的知道密碼,不然怎麼能夠每次都準確回應我的要求,而且真的不用讓我知道密碼耶!」
小明很驕傲地表示:「厲害吧,這就是『零知識證明』的威力所在!」
這個故事展示了一個零知識證明的核心概念:透過反覆執行某個驗證程序,證明知悉某個秘密,但是不需要透露秘密本身。類似的方式,可以被運用在區塊鏈上,例如在 DeFi 應用程式中,證明某個用戶的錢包餘額。
今天我們初步介紹了什麼是零知識證明,並透過小明與小智的互動介紹了零知識證明的運作原理。零知識證明是一個比較需要邏輯思考的理論,大家可以多看幾次這個故事來確定自己是否了解了零知識證明。
在 Part 02 中,我將繼續介紹在博弈論框架下,零知識證明在 LLM 和區塊鏈生態系統中的創新應用。
明天見囉!